x86: suppress HPET broadcast initialization in the presence of ARAT
authorKeir Fraser <keir@xen.org>
Thu, 10 Feb 2011 14:19:54 +0000 (14:19 +0000)
committerKeir Fraser <keir@xen.org>
Thu, 10 Feb 2011 14:19:54 +0000 (14:19 +0000)
This follows Linux commit 39fe05e58c5e448601ce46e6b03900d5bf31c4b0,
noticing that all this setup is pointless when ARAT support is there,
and knowing that on SLED11's native kernel it has actually caused S3
resume issues.

A question would be whether HPET legacy interrupts should be forced
off in this case (rather than leaving whatever came from firmware).

Signed-off-by: Jan Beulich <jbeulich@novell.com>
xen/arch/x86/hpet.c

index d27a4d1c02693a604325f5b6a93fce8bc53ce148..0df678842fa6cff60d3dc4ce735a52972333397a 100644 (file)
@@ -557,6 +557,9 @@ void hpet_broadcast_init(void)
     u32 hpet_id, cfg;
     int i;
 
+    if ( boot_cpu_has(X86_FEATURE_ARAT) )
+        return;
+
     if ( irq_channel == NULL )
     {
         irq_channel = xmalloc_array(int, nr_irqs);